package com.rural.bus.view;

import android.app.Dialog;
import android.content.Context;
import android.os.Bundle;
import android.text.TextUtils;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.LinearLayout;
import android.widget.Toast;

import com.rural.bus.R;


/**
 * Created by Peanut on 15/8/25.
 */
public class InputDialog extends Dialog implements View.OnClickListener {

    private EditText et_edit;
    private Button btn_confirm;
    private Button btn_cancel;
    private String msg_edit;
    private OnInputDialogDismissListener onDialogDismissListner;
    private LinearLayout linearlayout_button_division;
    private String confirm_msg;
    private String cancel_msg;

    public interface OnInputDialogDismissListener {
        void onConfirmClicked(String msg);

        void onCancelClicked();
    }


    /**
     * @param context     context
     * @param confirm_msg 确认按钮文字
     * @param cancel_msg  取消按钮文字
     * @param msg_edit    主要内容
     * @param listner     回调接口
     */
    public InputDialog(Context context, String confirm_msg
            , String cancel_msg
            , String msg_edit, OnInputDialogDismissListener listner) {
        super(context, R.style.common_alert_dialog);

        this.msg_edit = msg_edit;
        this.onDialogDismissListner = listner;
        this.confirm_msg = confirm_msg;
        this.cancel_msg = cancel_msg;
    }

    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.view_input_dialog);
        initView();
    }

    private void initView() {
        et_edit = (EditText) findViewById(R.id.tv_edit);
        btn_confirm = (Button) findViewById(R.id.btn_confirm);
        btn_cancel = (Button) findViewById(R.id.btn_cancel);
        btn_confirm.setOnClickListener(this);
        btn_cancel.setOnClickListener(this);
        et_edit.setText(msg_edit);

        linearlayout_button_division = (LinearLayout) findViewById(R.id.linearlayout_button_division);

        if (confirm_msg == null) {
            btn_confirm.setVisibility(View.GONE);
            linearlayout_button_division.setVisibility(View.GONE);
        } else {
            btn_confirm.setText(confirm_msg);
        }

        if (cancel_msg == null) {
            btn_cancel.setVisibility(View.GONE);
            linearlayout_button_division.setVisibility(View.GONE);
        } else {
            btn_cancel.setText(cancel_msg);
        }
    }

    @Override
    public void onClick(View v) {
        switch (v.getId()) {
            case R.id.btn_confirm:
                String input = et_edit.getText().toString().trim();
                if (TextUtils.isEmpty(input)){
//                    ToastUtil.showToast("输入内容不能为空");
                	Toast.makeText(getContext(), "输入内容不能为空", Toast.LENGTH_SHORT).show();
                    return;
                }
                if (onDialogDismissListner != null) {
                    dismiss();
                    onDialogDismissListner.onConfirmClicked(input);
                }
                break;
            case R.id.btn_cancel:
                if (onDialogDismissListner != null) {
                    dismiss();
                    onDialogDismissListner.onCancelClicked();
                }
                break;
        }
    }

    public void setContent(String msg){
        if (msg == null){
            if (et_edit != null) {
                et_edit.setText("");
            }
        }else{
            if (et_edit != null) {
                et_edit.setText(msg);
            }
        }
    }

}
